今年三月,斯坦福大学吴恩达教授在一次以 AI 智能体为主题的演讲中,点赞了一项“多智能体协作”ChatDev 项目——ChatDev 可以分饰多个 AI 智能体,分别扮演软件公司的 CEO、产品经理、设计师、测试人员......
这项被吴恩达点赞的 ChatDev 项目,其背后研究团队正是国内最懂 Agent 的清华大学 NLP 实验室和面壁智能团队。 就在近日,清华 NLP & 面壁团队又在 AI Agent 领域重磅开源了最新研究工作:「智能体互联网」IoA——把全世界智能体连接起来!
https://arxiv.org/abs/2407.07061IoA 开源地址:
https://github.com/OpenBMB/IoAIoA Discord社群:
https://discord.com/invite/E5XPtynFDh
智能体互联网IoA,击破多智能体协作的三重限制
融合了大模型能力,具有感知记忆、自主规划、调用工具、执行任务能力的 Agent,被称为智能体。它是大模型能够被普通人快速上手和使用,在千行百业中发挥作用创造价值的关键载体。当前,在广泛任务上实现接近人类表现的自主智能体,正在全球各地迅猛发展,这些智能体可能有不同的架构、运行于不同的设备、有不同的能力,同时在数量和功能上飞速演进。 但目前单个智能体更多处于“孤岛”的相对隔离状态,智能体之间的互相发现、大规模自由协作,还没有先例。多智能体协作,流行于开发者社区的「智能体工作流」Agent Workflow,比如AutoGen、Crew AI 和 LangGraph 已经显示了强大的潜力和应用效果,却依然存在着三重限制:- 大多数多智能体系统在一个设备上模拟多个智能体。现实场景更迫切的需求,是分布在多个设备和位置的智能体通过“网络”进行协作。
- 大多数多智能体系统的沟通机制单一,或者需要用户进行指定。沟通和多轮的信息交换,非常的不灵活。
为了跨过这些障碍,面壁智能联合清华大学 NLP 实验室,正式推出了 LLM 驱动的智能体互联网(Internet of Agents, IoA),这是一个受互联网启发的智能体通信和协作通用框架。 简单来说,IoA 创建了一个可以自由注册、互相发现的 Agent 协作平台,并且让智能体之间协作再向上构建,对原来 Agent 协作工作流(Work Flow)进行三个方向扩容,跨设备、更多异质 Agent 开放互联、协作组织方式高度灵活,从而在更高维度上形成智能体互联网 Internet of Agents(IoA)。 IoA 一经发布,也获得了全球范围内开发者的持续关注和讨论。
IoA是什么?它的定义、组成和关键机制
loA 为异构智能体的协作提供了一个灵活且高效的平台。 loA 本质通过引入一个能够集成不同第三方智能体的协议,以及类似即时通讯应用的框架来促进智能体在平台上发现其他智能体并动态组队。 IoA 的核心由两个主要组件组成:服务器和客户端。服务器作为中心枢纽,管理智能体注册、发现和消息路由,确保具备不同能力的智能体能够互相发现并发起通信。客户端则作为单个智能体的包装,提供必要的通信功能,并适应指定的沟通协议。
loA 对于现有 Agent 智能体协作“工作流”和应用方式有三项重要突破:Agent 互联载体,从单设备到多设备:大多数多智能体系统在一个设备上模拟多个智能体,这与现实场景相悖。IoA 支持分布在多个设备和位置的智能体通过网络进行协作。在开放性上,从限定框架的“局域网”到自由身份注册的“互联网”:大多数多智能体系统只允许接入框架内部定义的智能体,而 IoA 允许开发者通过为现有智能体实现一个 adapter 接入到 IoA 的客户端中并注册到 IoA 服务端,扩展系统内智能体的能力多样性。沟通、协作、组队上,从固定计划到灵活高效:大多数多智能体系统的沟通机制单一,或者需要用户进行指定。IoA 将沟通阶段抽象为 5 个阶段:讨论、同步任务分配、异步任务分配、暂停等待任务完成、总结,通过有限状态自动机实现了自主会话流程控制机制,允许智能体根据任务需求和进展自适应调整协作策略。机制一,智能体注册与发现
为了实现分布式的异构智能体协作,我们借鉴了即时通信软件中用户可以进行注册并被其他用户通过关键词搜索到的机制,提出了智能体注册与发现机制。 - 智能体注册:当一个新智能体加入 IoA 时,他所属的客户端需要向服务器发送注册请求。在注册中,我们要求智能体应提供其能力、技能和专长领域的详细描述。这些描述被存储在服务器的数据层中的智能体仓库模块中。
- 智能体发现:智能体发现功能利用存储在智能体仓库模块中的信息,使智能体可以为特定任务找到合适的协作者。当一个智能体需要组建团队或寻求帮助时,它可以使用服务器的智能体查询模块进行搜索。通过匹配搜索条件和智能体描述,确保相关能力的智能体能够被发现。
机制二,自主嵌套团队组建
自主嵌套团队组建机制实现了根据任务需求动态灵活地组合合适的智能体。该机制允许智能体根据任务需求自适应地组建团队,并为复杂、多方面的任务创建嵌套子团队。- 团队组建过程:当一个智能体被分配任务时,它可以使用服务器提供的智能体查询功能寻找合适的协作者。一旦找到合适的智能体,它会发起一个新的群组聊天,形成团队。
- 嵌套组队:嵌套组队允许形成团队和子团队的层级结构。在任务执行过程中,如果智能体被分配了任务,且他识别到需要额外的专长,它可以再次搜索合适的智能体,并发起一个新的子群组聊天,从而形成树状的团队结构。如下图所示。
机制三,自主会话流程控制
有效的通信对于成功的协作至关重要。受言语行为理论(Speech Act Theory)启发,我们在 IoA 中引入了自主会话流程控制机制。该机制使智能体能够协调其通信,并保持结构化对话,提升协作的效率和效果。- 顺序发言机制:为管理潜在的冲突并确保清晰的沟通,IoA 采用了基本的顺序发言机制。在任何给定时间内,只有一个智能体可以发言,防止混乱并保持通信顺序。尽管简单,但当搭配上下面的有限状态机,仍可以构成灵活但相对可控的自主对话流程。
- 群组聊天状态的有限状态机:如下图所示,我们将会话流程形式化为一个有限状态机,每个状态对应协作过程的不同阶段。通过状态转换,智能体能够根据任务需求和进展灵活调整会话状态。
通过实现这些关键机制,IoA 实现了智能体之间的结构化、高效的通信和协作。这种方法允许智能体根据协作需求动态调整,促进在复杂多智能体场景中的更有效的问题解决和决策。机制四,任务分配与执行
任务分配与执行机制旨在高效地在智能体之间分配工作,并管理简单和复杂任务的执行。该机制与团队组建和会话流程控制机制协同工作,确保协作和任务完成。- 任务分配:任务分配在群组沟通中进行,分为同步任务分配和异步任务分配两种类型。同步任务分配暂停群组聊天直到分配的任务完成,而异步任务分配不打断正在进行的讨论,允许任务并行执行。
- 任务执行:任务分配后,负责的智能体开始执行。执行过程取决于任务的性质和智能体的能力。集成的第三方智能体通过客户端的智能体集成模块处理任务执行。
通过集成任务分配与执行与团队组建和会话流程控制机制,IoA 提供了一种灵活和高效的方法来管理复杂的多智能体协作。该方法允许动态任务分解、专门智能体分配和协调执行,使系统能够有效地解决各种问题。
▲ IoA 与其他智能体协作“工作流”关键特性对比为了展示 IoA 在整合异构智能体方面的有效性,loA 在多种任务上进行了全面的实验。这些实验旨在展示智能体异质性的不同方面,包括工具多样性、架构多样性、不同的观察和动作空间,以及不同的知识基础。异构工具:GAIA基准测试
GAIA 是 Meta 提出的一个 Agent 能力 benchmark,包含需要推理能力、网页浏览、代码计算等多方面能力的多样化任务。通过仅接入最基础的 4 个 ReAct 智能体(分别配备有网页浏览器、代码解释器、wikidata 查询工具以及 Youtube 字幕下载器),IoA 在 GAIA 基准测试中的表现显著优于现有方法。尽管仅使用了基本的 ReAct 智能体,IoA 在整体性能上仍然达到最高,并在需要高级推理和复杂协作的更高难度级别中表现尤为突出。
异构工具:开放式指令基准测试
GAIA 中大部分包含的是问答题,为了评测 IoA 在更为现实的开放式问题下的表现,面壁智能通过 self-instruct 的方式构建了一个涵盖代码、数学、生活助手以及搜索报告四类任务共 150 条数据。并在 IoA 中接入了 AutoGPT 与 Open Interpreter——两个最知名的智能体——通过 GPT-4 对 IoA 的输出与 AutoGPT、Open Interpreter 两者的输出分别进行对比。 实验结果显示,IoA 在协调 AutoGPT 和 Open Interpreter 的协作方面表现卓越,显著优于单独使用这些智能体。IoA 在所有四个任务类别中均表现出色,相比于 AutoGPT 与 Open Interpreter 来说,总体胜率分别为 76.5% 和 63.4%。
▲ (图)接入了AutoGPT + Open Interpreter的IoA与两者分别的对比
异构观察和动作空间:具身智能体任务
为了考察 IoA 在智能体所处环境与动作空间不同的情况下,能否使智能体高效协同完成任务,面壁智能在 Rocobench 上进行了测试,这是一个虚拟具身的 benchmark,在每个任务中,两个或三个具身智能体需要通过沟通协作完成共同的目标。 面壁将 IoA 与两个基准进行了对比:Central Plan 和 Roco Dialog。结果显示,IoA 在具身AI任务中表现出色,成功率显著高于专为此任务设计的 Roco Dialog 框架。在多个任务中,IoA 的成功率甚至超过了拥有完整环境可见性的 Central Plan 基准。
▲ (图)具身任务中,IoA与其他基准的对比
▲ (图)IoA完成Rocobench任务
异构知识:检索增强生成
在多智能体系统中,一个常见情况是不同的智能体具备不同的知识,例如挂载了不同的知识库,或是在不同的领域数据集上进行过训练。为了观察在知识异构的情况下 IoA 是否能够使得不同智能体有效沟通并完成回答,面壁提出在RAG问答场景下进行测试,设置了三种场景:- 2 个异构智能体场景:分别能够访问 Google 和 Wikipedia
- 2 个同构智能体:两者都能访问两个知识源,用于作为 IoA 在信息完备情况下的对比实验
- 3 个同构智能体:三者都能访问两个知识源,用于衡量 IoA 在知识冗余情况下是否仍有可扩展性
实验结果显示,基于 GPT 3.5 的 IoA 在所有数据集上的 RAG 表现能够达到或超越单个 GPT-4 的表现。同时在异构知识场景下,IoA 的表现也较为出色,在两个数据集上超过了之前一个同构的多智能体 RAG 框架。同时,IoA 的同构表现也体现了 IoA 有着较高的能力上限。
▲ (图)IoA在RAG任务上与其他基线框架的对比
IoA 的未来远景:全面变革生活和生产方式,导向未知的「智慧爆炸」
面壁智能推出「智能体互联网」IoA 的灵感,可能既有“互联网”的启发,更是某种群体智能、大规模协作涌现的前沿探索。人类的历史就摆在眼前。智人作为个体已经拥有非凡智慧,彼此充分交流信息、分工协作、深入实践,带来了各种工具和发明层出不穷,以及自然科学的诞生。某种程度上,现代文明也是智人在“世界网络”交互的结果。由大模型驱动的智能体,本身就是对人的行为的某种模仿。将目前正在快速发展、散落在全球各地的 Agent 智能体连接起来,loA 就像创造了一个 Agent 交互的世界网络,然后演化开启。首先,对于开发者和最终用户来说,未来在 IoA 上,你可以发现更多更丰富更强大的 Agent。就像互联网是一个看不到边界的数据、信息和资源宝库,处在不断的膨胀、扩充、能力边界延展之中,loA 作为一个 Agent 存在、协作、涌动的海洋,不断地扩充如今 Agent 的能力边界,未来,很可能每个人都会主动或被动的参与其中。其次,IoA 创造一个「智能体」可以互相发现、自由交互的开放空间。以 IoA 为纽带,在万物都是 Agent 的未来,每个物品都通过 Agent 技术内置了对自己功能的智能化理解,这些理解通过互联网联系起来,最终引发人类生活方式的全面变革。最后,由高度智慧的个体进行群体协作,会“涌现”什么,长期变化更是值得探索。当前已有的 Agent 协作网络,仅仅针对某些特定任务效果更好,大规模异质 Agents 协作,从促进单个 Agents 的能力演变、强化到 Agents 网络 IoA 上互相交互。从已知到未知,loA 可能正通向某个未知领域,在未来引发“智慧大爆炸”。➤ IoA 论文地址:
https://arxiv.org/abs/2407.07061
➤ IoA 开源地址:
https://github.com/OpenBMB/IoA
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧